/**
 * 版权所有:版权所有(C) 2020，卓信科技
 * 系统名称:pms-项目管理系统
 * 文件名称:UserServiceImpl.java
 * 模块名称:用户信息缓存
 * 创建日期:2020年5月11日
 * 作        者:sunlq
 * 内容摘要:用户信息缓存
 */
package com.zx.emanage.user.service.impl;

import java.util.HashMap;
import java.util.Map;

import org.springframework.cache.annotation.CacheEvict;
import org.springframework.cache.annotation.CachePut;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service;

import com.zx.emanage.user.service.IUserService;
import com.zx.emanage.user.vo.PmPersonnel;

/**
 * 类  名  称:UserServiceImpl
 * 内容摘要:用户信息缓存
 * 作        者:sunlq
 */
@Service("userService")
public class UserServiceImpl implements IUserService
{
	// 手机端在线用户<短工号,token>
	private Map<String, String> onlineUser = new HashMap<String, String>();

	/**
	 * 方法名称: getOnlineUser 内容摘要: 获取手机端在线用户token
	 * 
	 * @param token
	 * @return
	 * @author: sunlq
	 * @time:2020年7月13日 下午3:26:32
	 */
	@Override
	public String getOnlineUser(String token) 
	{
		return onlineUser.get(token);
	}

	/**
	 * 方法名称: setOnlineUser 内容摘要: 更新手机端在线用户token
	 * 
	 * @param personnel_shortCode
	 * @param token
	 * @return
	 * @author: sunlq
	 * @time:2020年7月13日 下午3:26:48
	 */
	@Override
	public String setOnlineUser(String personnel_shortCode, String token) 
	{
		return onlineUser.put(personnel_shortCode, token);
	}

    /**
     * 方法名称: putPmPersonnel
     * 内容摘要: 缓存员工信息
     * @param personnel
     * @return 
     * @author: sunlq
     * @time:2020年5月8日 下午2:29:14
     */
    @Override
    @CachePut(value = "tokenCache", key = "#personnel.token")
    public PmPersonnel putPmPersonnel(PmPersonnel personnel)
    {
        return personnel;
    }

    /**
     * 方法名称: getPmPersonnel
     * 内容摘要: 从缓存取用户信息
     * @param token
     * @return 
     * @author: sunlq
     * @time:2020年5月11日 上午11:28:45
     */
    @Override
    @Cacheable(value = "tokenCache", key = "#token")
    public PmPersonnel getPmPersonnel(String token)
    {
        return null;
    }

    /**
     * 方法名称: deletePmPersonnel
     * 内容摘要: 从缓存清除用户信息
     * @param token 
     * @author: sunlq
     * @time:2020年5月11日 上午11:29:00
     */
    @Override
    @CacheEvict(value = "tokenCache", key = "#token")
    public void deletePmPersonnel(String token)
    {
    }

}
